home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 49 / Amiga Format CD49 (2000-01-17)(Future Publishing)(GB)(Track 1 of 3)[!][issue 2000-02].iso / -serious- / programming / e / powerd0.06 / modules / exec / memory.m < prev    next >
Text File  |  1999-11-30  |  988b  |  69 lines

  1. MODULE    'exec/nodes'
  2.  
  3. OBJECT MemChunk
  4.     Next:PTR TO MemChunk,
  5.     Bytes:ULONG
  6.  
  7. OBJECT    MemHeader
  8.     Node:LN,
  9.     Attributes:UWORD,
  10.     First:PTR TO MemChunk,
  11.     Lower:PTR,
  12.     Upper:PTR,
  13.     Free:ULONG
  14.  
  15. /*
  16. OBJECT    MemEntry
  17. union {
  18.     ULONG   meu_Reqs;    
  19.     APTR    meu_Addr;    
  20.     } me_Un;
  21.     ULONG   me_Length;    
  22. };
  23.  
  24. #define me_un        me_Un
  25. #define me_Reqs     me_Un.meu_Reqs
  26. #define me_Addr     me_Un.meu_Addr
  27. */
  28.  
  29. /*
  30. OBJECT    MemList
  31.     Node:LN,
  32.     NumEntries:UWORD,
  33.     ME:MemEntry
  34. */
  35.  
  36. CONST    MEMF_ANY=0,
  37.         MEMF_PUBLIC=1,
  38.         MEMF_CHIP=2,
  39.         MEMF_FAST=4,
  40.  
  41.         MEMF_LOCAL=$100,
  42.         MEMF_24BITDMA=$200,
  43.         MEMF_KICK=$400,
  44.  
  45.         MEMF_CLEAR=$10000,
  46.         MEMF_LARGEST=$20000,
  47.         MEMF_REVERSE=$40000,
  48.         MEMF_TOTAL=$80000,
  49.  
  50.         MEMF_NO_EXPUNGE=$80000000
  51. /*
  52. #define MEM_BLOCKSIZE    8L
  53. #define MEM_BLOCKMASK    (MEM_BLOCKSIZE-1)
  54.  
  55.  
  56. struct MemHandlerData
  57. {
  58.     ULONG    memh_RequestSize;    
  59.     ULONG    memh_RequestFlags;
  60.     ULONG    memh_Flags;            
  61. };
  62.  
  63. #define    MEMHF_RECYCLE    (1L<<0)
  64.  
  65. #define    MEM_DID_NOTHING    (0)
  66. #define    MEM_ALL_DONE    (-1)    
  67. #define    MEM_TRY_AGAIN    (1)    
  68. */
  69.